/**
 * @Author: 赵京涛 z19472333952022@163.com
 * @Date: 2025-09-12 13:47:35
 * @LastEditors: 赵京涛 z19472333952022@163.com
 * @LastEditTime: 2025-09-12 13:47:35
 * @projectName: HeBeiHaiYangData
 * @Description: 导出默认通用配置
 */
type Setting = {
  base?: never;
  abbreviation: string;
  authentication: string;
  debounce: string[];
  defaultOopeneds: string[];
  devPort: string;
  donation: boolean;
  errorLog: string[];
  footerCopyright: boolean;
  imageCompression: boolean;
  keepAliveMaxNum: number;
  lintOnSave: boolean;
  loadingText: string;
  loginInterception: boolean;
  loginRSA: boolean;
  logo: string;
  theme: string;
  themePlugins?: string[];
  uniqueOpened: boolean;
  version?: string;
  tokenName: string;
  transpileDependencies: string[];
  title: string | undefined;
  progressBar: boolean;
  routerMode: string;
  routesWhiteList: string[];
  spinner: string;
  storage: string;
  recordRoute: boolean;
  providePlugin: {
    [key: string]: never;
  };
  templateFolder: string;
};
// @ts-ignore
export const configSetting: Setting = {
  // 开发环境每次保存时是否输出为eslint编译警告
  lintOnSave: true,
  // 进行编译的依赖
  transpileDependencies: [],
  // 标题 （包括初次加载雪花屏的标题 页面的标题 浏览器的标题）
  title: process.env.VITE_APP_TITLE,
  // 简写
  abbreviation: "vab",
  // 开发环境端口号
  devPort: "9090",
  // 是否显示页面底部自定义版权信息
  footerCopyright: true,
  // 是否显示顶部进度条
  progressBar: true,
  // 缓存路由的最大数量
  keepAliveMaxNum: 99,
  // 路由模式，可选值为 history 或 hash
  routerMode: "hash",
  // 不经过token校验的路由
  routesWhiteList: ["/login", "/register", "/404", "/401"],
  // 加载时显示文字
  loadingText: "加载中",
  // loading加载类名
  spinner: "dots-loader",
  // token名称
  tokenName: "accessToken",
  // token存储位置localStorage sessionStorage
  storage: "localStorage",
  // token失效回退到登录页时是否记录本次的路由
  recordRoute: true,
  // 是否显示logo，不显示时设置false，显示时请填写remixIcon图标名称，暂时只支持设置remixIcon
  logo: "vuejs-fill",
  // 是否显示在页面高亮错误
  errorLog: ["development", "production"],
  // 是否开启登录拦截
  loginInterception: true,
  // 是否开启登录RSA加密
  loginRSA: true,
  // intelligence和all两种方式，前者后端权限只控制permissions不控制view文件的import（前后端配合，减轻后端工作量），all方式完全交给后端前端只负责加载
  authentication: "intelligence",
  // vertical布局时是否只保持一个子菜单的展开
  uniqueOpened: true,
  // vertical布局时默认展开的菜单path，使用逗号隔开建议只展开一个
  defaultOopeneds: ["/vab"],
  // 需要加loading层的请求，防止重复提交
  debounce: ["doEdit"],
  // 需要自动注入并加载的模块
  providePlugin: {},
  // 代码生成机生成在view下的文件夹名称
  templateFolder: "project",
  // 是否显示终端donation打印
  donation: true,
  // 是否开启图片压缩
  imageCompression: true,
};
